<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen">
</head>
<body>
    <div class="entry"> 
 <ul> 
  <li><strong><a href="#ObjectCreate">ObjectCreate()</a></strong> – 创建对象</li> 
  <li><strong><a href="#ObjectDelete">ObjectDelete()</a></strong> – 删除对象</li> 
  <li><strong><a href="#ObjectDescription">ObjectDescription()</a></strong> – 获取对象描述</li> 
  <li><strong><a href="#ObjectFind">ObjectFind()</a></strong> – 查找指定对象</li> 
  <li><strong><a href="#ObjectGet">ObjectGet()</a></strong> – 获取指定对象的属性值</li> 
  <li><strong><a href="#ObjectSet">ObjectSet()</a></strong> – 修改指定对象属性值</li> 
  <li><strong><a href="#ObjectGetFiboDescription">ObjectGetFiboDescription()</a></strong> – 获取斐波纳契对象描述</li> 
  <li><strong><a href="#ObjectSetFiboDescription">ObjectSetFiboDescription()</a></strong> – 设置斐波纳契对象描述</li> 
  <li><strong><a href="403.html#ObjectGetShiftByValue">ObjectGetShiftByValue()</a></strong> – 计算并返回柱体索引</li> 
  <li><strong><a href="403.html#ObjectGetValueByShift">ObjectGetValueByShift()</a></strong> – 计算并返回指定柱体价格值</li> 
  <li><strong><a href="403.html#ObjectMove">ObjectMove()</a></strong> – 移动对象</li> 
  <li><strong><a href="403.html#ObjectName">ObjectName()</a></strong> – 获取对象名</li> 
  <li><strong><a href="403.html#ObjectsDeleteAll">ObjectsDeleteAll()</a></strong> – 删除指定对象</li> 
  <li><strong><a href="403.html#ObjectSetText">ObjectSetText()</a></strong> – 设置对象描述</li> 
  <li><strong><a href="403.html#ObjectsTotal">ObjectsTotal()</a></strong> – 获取指定类型对象总数</li> 
  <li><strong><a href="403.html#ObjectType">ObjectType()</a></strong> – 获取对象类型</li> 
 </ul> 
 <p>&nbsp;</p> 
 <h2><a name="ObjectCreate"></a>ObjectCreate() – 创建对象</h2> 
 <pre class="brush: mql4; toolbar: false;">bool ObjectCreate(string name, int type, int window,
                  datetime time1, double price1,
                  void     time2, void   price2,
                  void     time3, void   price3)</pre> 
 <p>在指定的窗口中用指定的名称、类型和最初的坐标创建对象。根据对象类型与对象有关的坐标个数可以是可以是1到3个。如果函数成功，返回TRUE，否则，返回FALSE。要想获得详细的错误信息，请调用GetLastError()函数。</p> 
 <p>OBJ_LABEL类型的对象忽略坐标。使用 <a href="#ObjectSet">ObjectSet()</a> 设定 <a href="376.html#Object_properties">OBJPROP_XDISTANCE</a> 和 <a href="376.html#Object_properties">OBJPROP_YDISTANCE</a> 属性。</p> 
 <p>注：图表子窗口(如果子窗口图表中带有指标)编号从1开始。图表主窗口总是存在的，且索引为零。</p> 
 <p>坐标必须成对传递：时间和价格。例如，OBJ_VLINE对象只需要时间，但价格(任意值)也必须同时传递。</p> 
 <p>参数:</p> 
 <pre>name - 对象唯一名称。
type - 对象类型。它可以是 <a href="376.html#Object_types">对象类型列表</a> 的任意值。
window - 要添加对象的窗口索引。窗口索引必须大于或等于0，并且小于 <a href="#WindowsTotal">WindowsTotal()</a>。
time1 - 第一点时间。
price1 - 第一点价格值。
time2 - 第二点时间。
price2 - 第二点价格值。
time3 - 第三点时间。
price3 - 第三点价格值。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">  // 新文本对象
  if(!ObjectCreate("text_object", OBJ_TEXT, 0, D'2004.02.20 12:30', 1.0045))
    {
     Print("错误:不能创建文本! 代码 #",GetLastError());
     return(0);
    }
  // 新标签对象
  if(!ObjectCreate("label_object", OBJ_LABEL, 0, 0, 0))
    {
     Print("错误:不能创建label_object! 代码 #",GetLastError());
     return(0);
    }
  ObjectSet("label_object", OBJPROP_XDISTANCE, 200);
  ObjectSet("label_object", OBJPROP_YDISTANCE, 100);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectDelete"></a>ObjectDelete() – 删除对象</h2> 
 <pre class="brush: mql4; toolbar: false;">bool ObjectDelete(string name)</pre> 
 <p>删除指定名称的对象。如果函数成功，返回TRUE，否则，返回FALSE。</p> 
 <p>参数:</p> 
 <pre>name - 要删除对象的名称。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">ObjectDelete("text_object");</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectDescription"></a>ObjectDescription() – 获取对象描述</h2> 
 <pre class="brush: mql4; toolbar: false;">string ObjectDescription(string name)</pre> 
 <p>返回对象描述。对于OBJ_TEXT和OBJ_LABEL类型对象，这些对象设置的文本将返回。</p> 
 <p><strong>参见</strong> <a href="http://www.myeatrade.com/403/#ObjectSetText">ObjectSetText()</a> 函数。</p> 
 <p>参数:</p> 
 <pre>name - 对象的名称。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;"> //  将图表对象列表写入文件
  int    handle, total;
  string obj_name,fname;
  // 文件名称
  fname="objlist_"+Symbol();
  handle=FileOpen(fname,FILE_CSV|FILE_WRITE);
  if(handle!=false)
    {
     total=ObjectsTotal();
     for(int i=-;i&lt;total;i++)
       {
        obj_name=ObjectName(i);
        FileWrite(handle,"Object "+obj_name+" description= "+ObjectDescription(obj_name));
       }
     FileClose(handle);
    }</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectFind"></a>ObjectFind() – 查找指定对象</h2> 
 <pre class="brush: mql4; toolbar: false;">int ObjectFind(string name)</pre> 
 <p>查找指定名称的对象。函数返回包含找到的对象窗口索引。如果查找失败，返回-1。如果想获取详细的错误信息，请调用GetLastError()函数。</p> 
 <p>图表子窗口(如果图表子窗口带有指标)编号从1开始。图表主窗口总是存在且索引为零。</p> 
 <p>参数:</p> 
 <pre>name - 要查找的对象名称。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">if(ObjectFind("line_object2")!=win_idx) return(0);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectGet"></a>ObjectGet() – 获取指定对象的属性值</h2> 
 <pre class="brush: mql4; toolbar: false;">double ObjectGet(string name, int index)</pre> 
 <p>函数返回指定对象的属性值。如果想获取详细的错误信息，请调用GetLastError()函数。</p> 
 <p><strong>参见</strong> <a href="#ObjectSet">ObjectSet()</a> 函数。</p> 
 <p>参数:</p> 
 <pre>name - 要查找的对象名称。
index - 对象属性的索引。它可以是 <a href="376.html#Object_properties">对象属性枚举值</a> 的任意值。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">color oldColor=ObjectGet("hline12", OBJPROP_COLOR);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectSet"></a>ObjectSet() – 修改指定对象属性值</h2> 
 <pre class="brush: mql4; toolbar: false;">bool ObjectSet(string name, int index, double value)</pre> 
 <p>修改指定对象的属性值。如果函数成功，返回TRUE，否则，返回FALSE。如果想获取详细的错误信息，请调用 GetLastError() 函数。</p> 
 <p>参见 <a href="#ObjectGet">ObjectGet()</a> 函数。</p> 
 <p>参数:</p> 
 <pre>name - 要查找的对象名称。
index - 对象属性的索引。它可以是 <a href="376.html#Object_properties">对象属性枚举值</a> 的任意值。
value - 给定的新属性值</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">  // 将第1个坐标移到最后一个柱子的时间
  ObjectSet("MyTrend", OBJPROP_TIME1, Time[0]);
  // 设定第二个斐波纳契水平线
  ObjectSet("MyFibo", OBJPROP_FIRSTLEVEL+1, 1.234);
  // 设置对象可视性，对象显示在15分钟和1小时图表上
  ObjectSet("MyObject", OBJPROP_TIMEFRAMES, OBJ_PERIOD_M15 | OBJ_PERIOD_H1);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectGetFiboDescription"></a>ObjectGetFiboDescription() – 获取斐波纳契对象描述</h2> 
 <pre class="brush: mql4; toolbar: false;">string ObjectGetFiboDescription(string name, int index)</pre> 
 <p>返回斐波纳契对象的水平线说明。斐波纳契水平线的数量取决于对象类型。斐波纳契水平线个数最大为32(0到31)。</p> 
 <p>如果想获取详细的错误信息，请调用 GetLastError() 函数。</p> 
 <p>参见 <a href="#ObjectSetFiboDescription">ObjectSetFiboDescription()</a> 函数。</p> 
 <p>参数:</p> 
 <pre>name - 要查找的对象名称。
index - 斐波纳契水平线索引(0-31)。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">#include
  ...
  string text;
  for(int i=0;i&lt;32;i++)
    {
     text=ObjectGetFiboDescription(MyObjectName,i);
     //---- 检查对象是否少于32条水平线
     if(GetLastError()!=ERR_NO_ERROR) break;
     Print(MyObjectName,"水平线: ",i," description: ",text);
    }</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ObjectSetFiboDescription"></a>ObjectSetFiboDescription() – 设置斐波纳契对象描述</h2> 
 <pre class="brush: mql4; toolbar: false;">bool ObjectSetFiboDescription(string name, int index, string text)</pre> 
 <p>本函数为斐波纳契对象的水平线设置一个新的描述。斐波纳契水平线数量最大为32(0到31)。</p> 
 <p>参数:</p> 
 <pre>name - 要查找的对象名称。
index - 斐波纳契水平线索引(0-31)。
text - 新的水平线描述。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">ObjectSetFiboDescription("MyFiboObject",2,"Second line");</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 本文地址：
 <a href="402.html" rel="bookmark"><b>402.html</b></a> 
</div>
</body>
</html>